<?php

/***********************************************/
/*CONTENIDO*/
/***********************************************/
echo" <div class=\"pag_content\">
 	<div class=\"pag_content_title\">
		<div class=\"pag_title_cap\">Cap&iacute;tulo 3 </div>
		<div class=\"pag_title_cont\">	Objetos de la base de datos</div>
    </div>
    <div class=\"pag_content_body\">         
	<div class=\"contenido_principal\">	
		<br />";
		
/***********************************************/
/*TITULO PARTE*/
/***********************************************/

echo"	<div class=\"parrafo_titulo\">
		 Objetos de un esquema
	</div>";	

	
/***********************************************/
/*CONTENIDO*/
/***********************************************/

echo"
<div class=\"parrafo\" align=\"justify\">
 &nbsp;&nbsp;Entendemos por esquema un conjunto de objetos que pertenecen a un determinado usuario. Los objetos de un esquema pueden ser:
</div>
<ul class=\"parrafo_lista\">
<li>-	Tablas. </li>
<li>-	Indices.</li>
<li>-	Constraints.</li>
<li>-	Vistas.</li>
<li>-	Sinonimos.</li>
<li>-	Procedimientos.</li>
<li>-	Paquetes.</li>
</ul>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;En esta parte del cap&iacute;tulo vamos a ir introduciendo cada uno de estos objetos. 
</div>
<h3>1. TABLAS</h3>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Como la mayoria de nosotros sabemos las tablas son el principal objeto de almacenamiento de datos dentro de una base de datos. Estas a su vez se difiden en filas y columnas.
</div>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Para crear una tabla, necesitaremos asignar un nombre a la tabla, y a cada una de sus columnas incluyendo el tipo de datos que va a almacenar cada columna.
</div>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Para asignar un nombre a una columna debemos tener en cuenta:
	<div class=\"parrafo_lista_sub\">
		-	No pueden tener mas de 30 bytes.<br />
		-	Deben empezar por una letra.<br />
		-	No pueden tener caracteres especiales tales como ( _ , %, $, &).<br />
		-	Existen algunas palabras reservadas: NUMBER o INDEX.<br />
	</div>
</div>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Otra consideracion que debemos de tener es que el nombre de una tabla debe de ser unico en un esquema, pero no solo con otras tablas sino tambi&eacute;n con vistas, secuencias, sinonimos, procedimientos y paquetes.

</div>
<h4>Crear una tabla:</h4>
<div class=\"parrafo\" align=\"justify\">
	a) Ejemplo tabla b&aacute;sica:
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; CREATE TABLE change_log
  (log_id NUMBER
   ,who VARCHAR2(64)
   ,when TIMESTAMP
   ,what VARCHAR2(200));
  
</p></pre></blockquote>
<div class=\"parrafo\" align=\"justify\">
b) Ejemplo tabla indicando el tablespace:
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; CREATE TABLE change_log
 (log_id NUMBER
  ,who VARCHAR2(64)
  ,when TIMESTAMP
  ,what VARCHAR2(200))
TABLESPACE users;

</p></pre></blockquote>
<div class=\"parrafo\" align=\"justify\">
c) Para saber la estructura de una tabla en un determinado  esquema utilizaremos el comando DESC:
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql> DESC change_log;

	Name			Type
	---------------- 	----------------
	LOG_ID 			NUMBER
	WHO 			VARCHAR2(64)
	WHEN 			TIMESTAMP(6)
	WHAT 			VARCHAR2(200)
	
</p></pre></blockquote>
<div class=\"parrafo\" align=\"justify\">
d) Lo que seguramente alguno de vosotros no sepais es la posibilidad de construir una tabla a traves de una query:
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; CREATE TABLE january2004_log
	  NOLOGGING COMPRESS
	  TABLESPACE archives
	AS 
	 SELECT * FROM change_log
	 WHERE when BETWEEN TO_DATE('01-JAN-2004','DD-Mon-YYYY')
	 AND TO_DATE('31-JAN-2004','DD-Mon-YYYY');
	 
</p></pre></blockquote><br />
<div class=\"parrafo\" align=\"justify\">
<i>NOLOGGING </i>es una opcion que utilizamos para decirle a Oracle que no queremos que los datos que resultan de ejecutar la query y que van a llenar la tabla junuary2004_log no ocupe espacio en el redo log.
</div>
<div class=\"parrafo\" align=\"justify\">
<i>COMRESS</i> para que los datos se muevan en modo comprimido. Optimizando el espacio de disco.
</div>
<div class=\"parrafo\" align=\"justify\">
e) TABLAS TEMPORALES. El resultado del ejemplo anterior va a crear una tabla permanente. Pero a lo mejor unicamente necesitamos trabajar con esos datos durante un tiempo determinado de tiempo. Para ello tenemos las tablas temporales. Estas tablas pueden almacenar los datos hasta mientras dure la transaccion (ON COMMIT DELETE ROWS) o mientras dure la sesi&oacute;n de usuario (ON COMMIT RESERVE ROWS).
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql &gt; CREATE TEMPORARY TABLE tmpData
	(category VARCHAR2(16)
	 ,running_count NUMBER
	 ) ON COMMIT DELETE ROWS;
	
</p></pre></blockquote><br />
<div class=\"parrafo\" align=\"justify\">
f) Otra situaci&oacute;n que nos podemos encontrar en nuestra tabla, es que nosotros necesitamos que una columna siempre se le asigne un dato, aunque las sentencias Insert no llenen esa columna nosotros podemos darle a esa columna un valor por defecto, utilizando la palabra DEFAULT.
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql &gt; CREATE TABLE change_log
	(log_id NUMBER
	,who VARCHAR2(64) DEFAULT USER
	,when TIMESTAMP DEFAULT SYSTIMESTAMP
	,what VARCHAR2(200)
	) TABLESPACE users;
	
</p></pre></blockquote><br/>
<div class=\"parrafo\" align=\"justify\">
g) Renombrar una tabla:
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p> sql&gt; ALTER TABLE change_log RENAME TO demo_change_log;

</p></pre></blockquote>
<div class=\"parrafo\" align=\"justify\">
h) A&ntilde;adir o eleminar columnas. 
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; ALTER TABLE change_log ADD how VARCHAR2(45);
sql&gt; ALTER TABLE change_log DROP COLUMN how;
</p></pre></blockquote><br/>
<div class=\"parrafo\" align=\"justify\">
i) Modificar el tipo de la columna. Podriamos necesitar modificar el tama&ntilde;o de la columna:
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt;ALTER TABLE change_log MODIFY what VARCHAR2(250);
</p></pre></blockquote><br />

<h3>2. CONSTRAINTS</h3>

<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Podemos configurar diferentes restricciones sobre las columnas de nuestra tabla. A esas restricciones o condiciones que debe de cumplir esa columna se llaman Contraint.
<br />
&nbsp;&nbsp;En una tabla podemos tener varios tipos de restricciones o contraints:
</div>
<div class=\"parrafo_lista_sub\">
-	NOT NULL <br />
-	UNIQUE<br />
-	PRIMARY KEY<br />
-	FOREIGN KEY<br />
-	CHECK<br />
</div>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Estas restricciones las podemos crear en el momento de crear la tabla o mediante el comando ALTER TABLE.
</div><br />
<h4>NOT NULL</h4>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Esta restricci&oacute;n nos va a obligar asignarle siempre un valor a la columna. A diferencia de otras constraints se debe de crear en el comando CREATE TABLE y en la misma linea de la columna a la que queremos a&ntilde;adir esa restriccion.
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; CREATE TABLE employees
	(employee_id 	NUMBER 	NOT NULL
	,hire_date 	DATE 		NOT NULL
	,first_name 	VARCHAR2(42)
	,last_name 	VARCHAR2(42)
	);
	
</p></pre></blockquote><br/>

<h4>UNIQUE</h4>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Esta restricci&oacute;n nos va a obligar a que todos los valores  almacenados en la columna sean diferentes. Aunque puede haber valores a NULL. Esta restriccion puede indicarse en la misma linea que la columna o al final.
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; CREATE TABLE employees
  (employee_id 	NUMBER NOT NULL
  ,hire_date 	DATE NOT NULL
  ,first_name 	VARCHAR2(42)
  ,last_name VARCHAR2(42)
  ,payroll_id VARCHAR2(10)
  ,CONSTRAINT uniq_payroll_id UNIQUE (payroll_id)
 );
  
</p></pre></blockquote><br/>

<h4>PRIMARY KEY</h4>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Esta sea seguramente la restriccion que mas vayais a utilizar, la Primary key obliga a que todas los valores de una columna sean diferentes, ademas no permite que se inserten valores a NULL. Al igual que la restricci&oacute;n anterior, esta constraint puede aparecer tanto en la misma linea de la columna afectada como al final.
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; CREATE TABLE employees
(employee_id NUMBER NOT NULL
 ,hire_date DATE NOT NULL
 ,first_name VARCHAR2(42)
 ,last_name VARCHAR2(42)
 ,payroll_id VARCHAR2(10)
 ,CONSTRAINT employees_pk PRIMARY KEY (employee_id)
 );

</p></pre></blockquote><br/>

<h4>FOREING KEY</h4>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;En esta restricci&oacute;n se vinculan dos columnas diferentes bien de la misma tabla, bien de tablas diferentes. La funci&oacute;n de esta restricci&oacute;n es que los valores que se inserten en la columna deben de existir ya en la otra columna.
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; CREATE TABLE departments
	(dept_nbr NUMBER NOT NULL
	 CONSTRAINT department_pk PRIMARY KEY
	,dept_name VARCHAR2(32)
	,manager_id NUMBER
	);

sql&gt; CREATE TABLE employees
	(employee_id NUMBER NOT NULL
	,hire_date DATE NOT NULL
	,first_name VARCHAR2(42)
	,last_name VARCHAR2(42)
	,payroll_id VARCHAR2(10)
	,dept_nbr NUMBER
	,CONSTRAINT uniq_payroll_id UNIQUE (payroll_id)
	,CONSTRAINT employees_pk PRIMARY KEY (employee_id)
	,CONSTRAINT emp_dept_fk FOREIGN KEY (dept_nbr)
	REFERENCES departments(dept_nbr)
	);
	
</p></pre></blockquote><br/>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;En este ejemplo hemos creado dos tablas departaments y employes. Al a&ntilde;adir un nuevo empleado en la tabla employes debemos de asignarle un departamento. Por lo que es logico pensar que el departamente debe de existir previamente.
<br />
&nbsp;&nbsp;Por defecto una FOREIGN KEY permite a&ntilde;adir valores a NULL.
<br />
&nbsp;&nbsp;El problema seguramente lo tengais cuando vayais a borrar un registro de la tabla departaments, entonces oracle mirara si una FOREIGN KEY esta referenciando esa columna y nos dira que se ha cometido una violacion en la contraint. Para solucionar esto en la sentencia del DELETE podemos usar una de estas dos opciones:
</div>
<div class=\"parrafo_lista_sub\">
-	ON DELETE CASCADE: borra los registros correspondientes de la tabla de employes.<br />
-	ON DELETE SET NULL: pone a NULL el valor dept_nbr que corresponde con el valor borrado en la tabla departaments.<br />
</div>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Se puede dar la situaci&oacute;n que lancemos un script que viole temporalmente alguna constraint pero que, a la hora de hacer el commit la constraint mantenga su integridad. Es decir, podemos tener un script que inserte primero los empleados y luego cree los departamentos. Para evitar que oracle devuelva un error haremos:
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; ALTER TABLE employees
 ADD CONSTRAINT emp_dept_fk FOREIGN KEY (dept_nbr)
 REFERENCES departments(dept_nbr) ON DELETE CASCADE
DEFERRABLE;

</p></pre></blockquote>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;No vamos a poder cambiar el estado de una constraint de deferrable a not deferrable por lo que tendremos que borrar y volver a crear la constraint.
</div>
<h4>CHECK</h4>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Con este tipo de constraint obligamos que nuestra columna  cumpla una determinada condicion.
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; ALTER TABLE employees ADD CONSTRAINT
validate_hire_date CHECK
(hire_date > TO_DATE('15-Apr-1999','DD-Mon-YYYY'));
</p></pre></blockquote>
<br />
<h4>OPERACIONES CON CONSTRAINTS</h4>

<div class=\"parrafo\" align=\"justify\">
a) Para borrar constraints utilizaremos este comando:
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; ALTER TABLE employees DROP CONSTRAINT validate_hire_date;

</p></pre></blockquote>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Si la constraint que queremos borrar es una primary key y existe una foreign keys que hacen referencia a la columna que tiene configurada esta primary key tendremos que utilizar la palabra CASCADE, para que elimine tambien estas foreign keys.
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; ALTER TABLE employees DROP PRIMARY KEY CASCADE;

</p></pre></blockquote>
<div class=\"parrafo\" align=\"justify\">
b) Habilitar y deshabilitar constraints.
<br />
&nbsp;&nbsp;Para trabajar con grandes cargas de datos es mas eficiente el deshabilitar las foreign keys y los checks y luego volverlas a habilitar.
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; ALTER TABLE employees DISABLE CONSTRAINT mgr_emp_fk;
-- Aqui hacemos la operacion de carga.
sql&gt; ALTER TABLE employees ENABLE CONSTRAINT mgr_emp_fk;

</p></pre></blockquote>

<h3>3. INDICES</h3>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Podemos entender los indices como informaci&oacute;n adiciona que se asocia a los datos almacenados de una tabla haciendo que sea mucho mas optimo si acceso.
<br />
&nbsp;&nbsp;Podemos crear dos tipos de indices Btree o bitmap.
<br />
&nbsp;&nbsp;Los indices de tipo Btree son un tipo de indices apropiados para columnas donde los datos son muy diferentes entre si. Betree soporta bloqueos a nivel de fila por lo que es apropiado para escenarios multiusuario. Un tipo de indices Btree son los que se generan por ejemplo al asignar una PRIMARY KEY o una retriccion UNIQUE.
<br />
&nbsp;&nbsp;Por otro lado, los indices bitmap estan pensados para columnas donde sus valores poseen un porcentaje de repeticion alto. Este tipo de indices esta pensado para tablas donde los cambios estan limitados y controlados ya que cada vez que se cambia un dato hay que recrear el indice.
</div>
<div class=\"parrafo\" align=\"justify\">
a) Crear un indice;
</div>

<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; CREATE INDEX emp_dept_nbr ON employes (dept_nbr) TABLESPACE indx;
</p></pre></blockquote>

<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Este ejemplo esta creando un indice, emp_dept_nbr en la tabla employes en la columna dept_nbr en el tablespace indx.
<br />
&nbsp;&nbsp;Tambien podemos crear indices sobre varias columnas:
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql& CREATE INDEX emp_multicolum ON employes (dept_nbr, hire_date) TABLESPACE indx;
</p></pre></blockquote>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Estos ejemplo crean indices de tipo Btree, para crear un indice de tipo Bitmap haremos:
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; CREATE BITMAP INDEX state_bix ON greography (state);
</p></pre></blockquote>
<div class=\"parrafo\" align=\"justify\">
b) Borrar un indice:
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql& DROP INDEX emp_multicolum;
DROP INDEX state_bix;
</p></pre></blockquote>
<div class=\"parrafo\" align=\"justify\">
c) Recrear un indice:
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; ALTER INDEX emp_multicolum REBUILD;
</p></pre></blockquote>
<div class=\"parrafo\" align=\"justify\">
d)	Para mover un indice de un tablespace a otro se hara:
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; ALTER INDEX emp_multicolumn REBUILD TABLESPACE index2;
</p></pre></blockquote>
<div class=\"parrafo\" align=\"justify\">
e)	Renombrar un indice
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; ALTER INDEX emp_multicolum RENAME TO dept_column;
</p></pre></blockquote>

<h3>4. VISTAS</h3>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Una vista el plasmar sobre una tabla virtual el resultado de una query, que puede combinar mas de una tabla.
<br />
&nbsp;&nbsp;Sobre los datos de una vista se pueden hacer insert, update y delete.
<br />
Sintaxis:
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; CREATE OR REPLACE VIEW empv
	(employee_name,
	Departament,
	Manager,
	Hire_date)AS SELECT
	(E.first_name,
	D.dept_name,
	M.first_name,
	E.hire_date) 
	FROM 
	Employees E,
	Departaments D,
	Employees M
	WHERE 
	E.dept_nbr=D.dept_nbr
	AND
	D.manager_id=M.employee_id;
</p></pre></blockquote>
<div class=\"parrafo\" align=\"justify\">
b) Borrar una vista:
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; DROP VIEW empv;
</p></pre></blockquote>

<h3>5. SECUENCIAS</h3>
<div class=\"parrafo\" align=\"justify\">
&nbsp;&nbsp;Una secuencia es un objeto de la base de datos cuya funcion es la de generar valores unicos de enteros.
</div>
<div class=\"parrafo\" align=\"justify\">
a)	Crear secuencia:
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; CREATE SEQUECE employees_seq START WITH 1 NOMAXVALUE NOMINVALUE;
</p></pre></blockquote>
<div class=\"parrafo\" align=\"justify\">
START WITH: indica el valor inicial de la secuencia.<br />
INCREMENT BY: indica el valor a sumar para obtener el siguiente entero.<br />
MAXVALUE: valor maximo a alcanzar. NOMAXVALUE.<br />
</div>
<div class=\"parrafo\" align=\"justify\">
b)	Trabajar con secuencia:
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; SELECT employees_seq FROM dual;
sql&gt; INSERT INTO employees (employee_id, first_name)
sql&gt; SELECT employees_seq.NEXTVAL, first_name FROM merged_employees.
</p></pre></blockquote>
<div class=\"parrafo\" align=\"justify\">
c)	Modificar una secuencia. Podemos modificar valores como INCREMENT BY, MAXVALUE, MINVALUE, CICLE pero no por START WITH.
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; ALTER SEQUENCE employees_sq INCREMENT BY -1;

</p></pre></blockquote>
<div class=\"parrafo\" align=\"justify\">
d)	Borrar Secuencia:
</div>
<blockquote style=\"COLOR: #2e5348; FONT-SIZE: 12px; FONT-WEIGHT: bold FONT:Arial, Helvetica, sans-serif\">
<pre><p>sql&gt; DROP SEQUENCE employee_seq;
</p></pre></blockquote>
 ";

/***********************************************/
/*PIE*/
/***********************************************/
echo"
	</div> 		 
    </div>
    <div class=\"pag_content_footer\">
    </div>
    <div class=\"pag_content_nav\">		
		<div class=\"pag_contenido_left\">
			<a  class=\"cap_next\" href=oca_main.php?cap=3&part=1>	&lt; Anterior </a>
		 </div>
		<div class=\"pag_contenido_right\" align=\"right\">	
			<a  class=\"cap_next\" href=\"oca_main.php?cap=3&part=1\">	Cap&iacute;tulo 4 &gt;</a>
		 </div>
	</div>      
</div>
";
?>
